\hypertarget{class_vision_1_1_detector}{
\section{Vision::Detector Class Reference}
\label{class_vision_1_1_detector}\index{Vision::Detector@{Vision::Detector}}
}
Inheritance diagram for Vision::Detector::\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=10cm]{class_vision_1_1_detector}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_vision_1_1_detector_a0d913868ae18be08b40d54e0dbf3c89c}{
bool {\bfseries Initialized} () const }
\label{class_vision_1_1_detector_a0d913868ae18be08b40d54e0dbf3c89c}

\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_vision_1_1_detector_a4047c026711207e5176c724599b1e31a}{
volatile bool \hyperlink{class_vision_1_1_detector_a4047c026711207e5176c724599b1e31a}{mSaveFrame}}
\label{class_vision_1_1_detector_a4047c026711207e5176c724599b1e31a}

\begin{DoxyCompactList}\small\item\em Save frame to output. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
double \hyperlink{class_vision_1_1_detector_ac40b6306ac85ed075ae353adbf8b1b68}{GetAngle} (const CvPoint $\ast$pt1, const CvPoint $\ast$pt2, const CvPoint $\ast$pt0) const 
\begin{DoxyCompactList}\small\item\em Initializes base objects. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a6f4e4aac6ac4beb4375a6693ed4c7524}{
bool \hyperlink{class_vision_1_1_detector_a6f4e4aac6ac4beb4375a6693ed4c7524}{BaseInit} (const char $\ast$OutputName, const char $\ast$ThreadName, CvScalar Color)}
\label{class_vision_1_1_detector_a6f4e4aac6ac4beb4375a6693ed4c7524}

\begin{DoxyCompactList}\small\item\em Capture and write statistics to file. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a2e6536128f7b34c9fe4a9535ed1ccee8}{
void \hyperlink{class_vision_1_1_detector_a2e6536128f7b34c9fe4a9535ed1ccee8}{CaptureStats} (CvSeq $\ast$\hyperlink{class_vision_1_1_image_callback_a454f6ad9e66846764ff778e9d6a16d14}{objSeq})}
\label{class_vision_1_1_detector_a2e6536128f7b34c9fe4a9535ed1ccee8}

\begin{DoxyCompactList}\small\item\em Copy images from calling platform. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a3666a3f5ebfcedfd64302ebcb8c87965}{
void \hyperlink{class_vision_1_1_detector_a3666a3f5ebfcedfd64302ebcb8c87965}{CopyImagesFromPlatform} ()}
\label{class_vision_1_1_detector_a3666a3f5ebfcedfd64302ebcb8c87965}

\begin{DoxyCompactList}\small\item\em Calls a function which detects objects in the image. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a5c356086164a1c007f5385aff678bb95}{
virtual void \hyperlink{class_vision_1_1_detector_a5c356086164a1c007f5385aff678bb95}{StartDetection} (void $\ast$args)=0}
\label{class_vision_1_1_detector_a5c356086164a1c007f5385aff678bb95}

\begin{DoxyCompactList}\small\item\em Write contour shapes to image. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a43b3ed0d959e79a25384152bc30d5051}{
void \hyperlink{class_vision_1_1_detector_a43b3ed0d959e79a25384152bc30d5051}{DisplayContour} (const CvSeq $\ast$contourSeq, IplImage $\ast$inputImage)}
\label{class_vision_1_1_detector_a43b3ed0d959e79a25384152bc30d5051}

\begin{DoxyCompactList}\small\item\em Write results to the output window. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a693f48ea34a71b9b0844d569112d0776}{
void \hyperlink{class_vision_1_1_detector_a693f48ea34a71b9b0844d569112d0776}{DisplayOutput} (IplImage $\ast$inputImage)}
\label{class_vision_1_1_detector_a693f48ea34a71b9b0844d569112d0776}

\begin{DoxyCompactList}\small\item\em Write a bounding rectangle around the contour points. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a92bdb55ad27eeae51ad58f6df84b0f76}{
void \hyperlink{class_vision_1_1_detector_a92bdb55ad27eeae51ad58f6df84b0f76}{DrawBoundingRect} (CvSeq $\ast$currentContourPtr, IplImage $\ast$inputImage)}
\label{class_vision_1_1_detector_a92bdb55ad27eeae51ad58f6df84b0f76}

\begin{DoxyCompactList}\small\item\em Write contours of shapes to image. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a402c512e8893c6a1ee462666d3ab5255}{
void \hyperlink{class_vision_1_1_detector_a402c512e8893c6a1ee462666d3ab5255}{DrawContours} (CvSeq $\ast$currentContour, IplImage $\ast$inputImage, CvScalar contourColor)}
\label{class_vision_1_1_detector_a402c512e8893c6a1ee462666d3ab5255}

\begin{DoxyCompactList}\small\item\em Match shapes against templates. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_ac1ad734c10068f19ec434151828fe1c8}{
double \hyperlink{class_vision_1_1_detector_ac1ad734c10068f19ec434151828fe1c8}{MatchShapes} (CvSeq $\ast$contour1, CvSeq $\ast$contour2, CvHuMoments $\ast$imageMoments)}
\label{class_vision_1_1_detector_ac1ad734c10068f19ec434151828fe1c8}

\begin{DoxyCompactList}\small\item\em Monitor image changes and find objects in image. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_adfec9541e2f0068336a37a09a54fa79b}{
void \hyperlink{class_vision_1_1_detector_adfec9541e2f0068336a37a09a54fa79b}{ProcessImage} (void $\ast$args)}
\label{class_vision_1_1_detector_adfec9541e2f0068336a37a09a54fa79b}

\begin{DoxyCompactList}\small\item\em Writes statistics to a file. \item\end{DoxyCompactList}\item 
void \hyperlink{class_vision_1_1_detector_a191ca37e2915068745321e42b15f7878}{RecordStatsToText} (const char $\ast$fileName, const char $\ast$Message)
\begin{DoxyCompactList}\small\item\em Looks for and registers streaming video with Jaus Node manager. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a7f959c81bfc0ded5d82860c465ba62d7}{
void \hyperlink{class_vision_1_1_detector_a7f959c81bfc0ded5d82860c465ba62d7}{RegisterWithJausNodeManager} ()}
\label{class_vision_1_1_detector_a7f959c81bfc0ded5d82860c465ba62d7}

\begin{DoxyCompactList}\small\item\em Write frame image to file. \item\end{DoxyCompactList}\item 
int \hyperlink{class_vision_1_1_detector_a8c158cec1860b87627a91bf70b12d63c}{SaveFrameAsImage} (const char $\ast$fileName, const IplImage $\ast$inputImage) const 
\begin{DoxyCompactList}\small\item\em SaveFrameAsImage. Saves the provided image as a file. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_vision_1_1_detector_afd653d7819d7b0a511a562269a8d8828}{
static void \hyperlink{class_vision_1_1_detector_afd653d7819d7b0a511a562269a8d8828}{MonitorImage} (void $\ast$args)}
\label{class_vision_1_1_detector_afd653d7819d7b0a511a562269a8d8828}

\begin{DoxyCompactList}\small\item\em Prepares the image for processing and detection. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_vision_1_1_detector_a26c16036239cb957954d1d040f09084f}{
CvScalar \hyperlink{class_vision_1_1_detector_a26c16036239cb957954d1d040f09084f}{mShapeColor}}
\label{class_vision_1_1_detector_a26c16036239cb957954d1d040f09084f}

\begin{DoxyCompactList}\small\item\em Shape color;. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a5daf83cb8d93da3de60a81b5a299d57f}{
\hyperlink{class_vision_1_1_vision_platform}{VisionPlatform} $\ast$ \hyperlink{class_vision_1_1_detector_a5daf83cb8d93da3de60a81b5a299d57f}{mAnalyzer}}
\label{class_vision_1_1_detector_a5daf83cb8d93da3de60a81b5a299d57f}

\begin{DoxyCompactList}\small\item\em Parent canvas and analyzing object. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_a7ed962072b6fb88396fa125468aa6d2e}{
const char $\ast$ \hyperlink{class_vision_1_1_detector_a7ed962072b6fb88396fa125468aa6d2e}{StatFileName}}
\label{class_vision_1_1_detector_a7ed962072b6fb88396fa125468aa6d2e}

\begin{DoxyCompactList}\small\item\em Output file name. \item\end{DoxyCompactList}\item 
\hypertarget{class_vision_1_1_detector_aeb75e385e1e6cdbc15720e81330f0518}{
\hyperlink{class_c_blob_result}{CBlobResult} $\ast$ {\bfseries mBlobs}}
\label{class_vision_1_1_detector_aeb75e385e1e6cdbc15720e81330f0518}

\item 
\hypertarget{class_vision_1_1_detector_ae8021193ac2abdafcad538b26fed1d70}{
volatile bool {\bfseries mCheckImage}}
\label{class_vision_1_1_detector_ae8021193ac2abdafcad538b26fed1d70}

\item 
\hypertarget{class_vision_1_1_detector_a154b8177bc8c129b6cc9fe4cc6167e52}{
volatile bool {\bfseries mClearStorage}}
\label{class_vision_1_1_detector_a154b8177bc8c129b6cc9fe4cc6167e52}

\item 
\hypertarget{class_vision_1_1_detector_a47a9918b24f0e6e980f067afc6f3226d}{
volatile bool {\bfseries mCopyImages}}
\label{class_vision_1_1_detector_a47a9918b24f0e6e980f067afc6f3226d}

\item 
\hypertarget{class_vision_1_1_detector_ab7544f88afe262e8a99bfe8105500365}{
volatile bool {\bfseries mEnableStreaming}}
\label{class_vision_1_1_detector_ab7544f88afe262e8a99bfe8105500365}

\item 
\hypertarget{class_vision_1_1_detector_a172384fca538b0495b2fa5fa4c937d6b}{
volatile bool {\bfseries mInitialized}}
\label{class_vision_1_1_detector_a172384fca538b0495b2fa5fa4c937d6b}

\item 
\hypertarget{class_vision_1_1_detector_af03d57008f723081b31d942f9a689cc7}{
volatile bool \hyperlink{class_vision_1_1_detector_af03d57008f723081b31d942f9a689cc7}{mOutputDisplayed}}
\label{class_vision_1_1_detector_af03d57008f723081b31d942f9a689cc7}

\begin{DoxyCompactList}\small\item\em Gets the angle between points. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Member Function Documentation}
\hypertarget{class_vision_1_1_detector_ac40b6306ac85ed075ae353adbf8b1b68}{
\index{Vision::Detector@{Vision::Detector}!GetAngle@{GetAngle}}
\index{GetAngle@{GetAngle}!Vision::Detector@{Vision::Detector}}
\subsubsection[{GetAngle}]{\setlength{\rightskip}{0pt plus 5cm}double Detector::GetAngle (const CvPoint $\ast$ {\em pt1}, \/  const CvPoint $\ast$ {\em pt2}, \/  const CvPoint $\ast$ {\em pt0}) const\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}
\label{class_vision_1_1_detector_ac40b6306ac85ed075ae353adbf8b1b68}


Initializes base objects. GetAngle. Finds the cosine of angle between vectors from pt0-\/$>$pt1, pt0-\/$>$pt2. \hypertarget{class_vision_1_1_detector_a191ca37e2915068745321e42b15f7878}{
\index{Vision::Detector@{Vision::Detector}!RecordStatsToText@{RecordStatsToText}}
\index{RecordStatsToText@{RecordStatsToText}!Vision::Detector@{Vision::Detector}}
\subsubsection[{RecordStatsToText}]{\setlength{\rightskip}{0pt plus 5cm}void Detector::RecordStatsToText (const char $\ast$ {\em fileName}, \/  const char $\ast$ {\em statMessage})\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}
\label{class_vision_1_1_detector_a191ca37e2915068745321e42b15f7878}


Looks for and registers streaming video with Jaus Node manager. RecordStatsToText. Saves the provided image statistics into a file.


\begin{DoxyParams}{Parameters}
\item[{\em FileName.}]File name of object to write to. \end{DoxyParams}
\hypertarget{class_vision_1_1_detector_a8c158cec1860b87627a91bf70b12d63c}{
\index{Vision::Detector@{Vision::Detector}!SaveFrameAsImage@{SaveFrameAsImage}}
\index{SaveFrameAsImage@{SaveFrameAsImage}!Vision::Detector@{Vision::Detector}}
\subsubsection[{SaveFrameAsImage}]{\setlength{\rightskip}{0pt plus 5cm}int Detector::SaveFrameAsImage (const char $\ast$ {\em fileName}, \/  const IplImage $\ast$ {\em inputImage}) const\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}
\label{class_vision_1_1_detector_a8c158cec1860b87627a91bf70b12d63c}


SaveFrameAsImage. Saves the provided image as a file. 
\begin{DoxyParams}{Parameters}
\item[{\em FileName.}]File name of object to be written. \end{DoxyParams}
\begin{DoxyReturn}{Returns}
Output integer from call to cvSaveImage. Results of write operation. 
\end{DoxyReturn}


TODO: Create and check directories for each individual output. 

The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
C:/Users/Matt/Documents/School/Robotics/zebulon/v2/vision/include/modules/bases/detector.h\item 
C:/Users/Matt/Documents/School/Robotics/zebulon/v2/vision/src/modules/bases/detector.cpp\end{DoxyCompactItemize}
